<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" 
    "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">

<html xmlns="http://www.w3.org/1999/xhtml"
      xmlns:ui="http://java.sun.com/jsf/facelets"
      xmlns:h="http://java.sun.com/jsf/html"
      xmlns:f="http://java.sun.com/jsf/core"            
      xmlns:jb="http://java.sun.com/jsf/composite/componentes"
      xmlns:p="http://primefaces.org/ui">

    <ui:composition template="/pages/core/plantilla/plantillaPrincipal.xhtml">
        <ui:define name="contenido">             
            <h:form onsubmit="return checkSubmit();"  id="frmPrincipal">
                <p:panel id="pnlPrincipal" header="#{i18n['panel.titulo.tarifa']} / #{sessionMBean.titulo} #{tarifaMBean.dto.id}" style="#{applicationMBean.estiloTitulo}">
                    <h:panelGrid id="pgFormDto" columns="10" cellpadding="4">

                        <h:outputLabel for="itOrganizacion" styleClass="label" value="#{i18n['tarifa.organizacion']}"/>                    
                        <h:outputText id="itOrganizacion" value="#{tarifaMBean.dto.organizacionDto.nombre}" />

                        <h:outputLabel for="itNombre" value="#{i18n['tarifa.nombre']}" styleClass="label"/>
                        <p:inputText id="itNombre" label="#{i18n['tarifa.nombre']}" 
                                     value="#{tarifaMBean.dto.nombre}"  readonly="#{sessionMBean.accion == applicationMBean.ver}"
                                     required="true" size="50" maxlength="200" styleClass="txtCampoObligatorio">
                            <f:validateLength maximum="200" minimum="0" />
                        </p:inputText>

                        <h:outputLabel for="itFecInicio" value="#{i18n['tarifa.fecha.inicio']}" styleClass="label"/>
                        <p:calendar id="itFecInicio" value="#{tarifaMBean.dto.trfechaInicio}" mindate="#{tarifaMBean.fechaInicio}" label="#{i18n['tarifa.fecha.inicio']}" pattern="#{applicationMBean.formatoFecha}"  required="true"
                                    style="#{applicationMBean.estiloObligatorio}" disabled="#{sessionMBean.accion == applicationMBean.ver}" >
                            <p:ajax event="dateSelect"  update="itFecFin" />  
                        </p:calendar>

                        <h:outputLabel for="itFecFin" value="#{i18n['tarifa.fecha.fin']}" styleClass="label"/>
                        <p:calendar id="itFecFin" value="#{tarifaMBean.dto.trfechaFin}" mindate="#{tarifaMBean.dto.trfechaInicio}" label="#{i18n['tarifa.fecha.fin']}" pattern="#{applicationMBean.formatoFecha}"  required="true"
                                    style="#{applicationMBean.estiloObligatorio}" disabled="#{sessionMBean.accion == applicationMBean.ver}"/>
                        
                        <h:outputLabel styleClass="label" value="#{i18n['general.label.activo']}"/>                    
                        <p:selectBooleanCheckbox value="#{tarifaMBean.dto.estado}"  style="#{applicationMBean.estilo}"  disabled="#{sessionMBean.accion == applicationMBean.ver}"/>
                        
                        <h:outputLabel for="itComentario" styleClass="label" value="#{i18n['general.label.comentario']}"/>
                        <p:inputTextarea id="itComentario" label="#{i18n['general.label.comentario']}" value="#{tarifaMBean.dto.comentario}"
                                         readonly="#{sessionMBean.accion == applicationMBean.ver}"
                                         required="false" maxlength="300" cols="60" rows="3" style="txtCampoObligatorio">                            
                        </p:inputTextarea>
                    </h:panelGrid>          

                    <h:outputLabel value="#{i18n['general.label.campos.auditoria']}" styleClass="subTitulo" rendered="#{tarifaMBean.dto.id!=null}"/>
                    <p:separator rendered="#{tarifaMBean.dto.id!=null}"/>
                    <h:panelGrid id="pgCamposAuditoria" columns="6" cellspacing="10" rendered="#{tarifaMBean.dto.id!=null}">
                        <h:outputLabel styleClass="label" value="#{i18n['general.label.usuario.creacion']}"/>
                        <h:outputLabel styleClass="txtCampo" value="#{tarifaMBean.dto.usuarioCreacionDto.descripcion}"/>
                        <h:outputLabel styleClass="label" value="#{i18n['general.label.fecha.creacion']}"/>
                        <h:outputLabel styleClass="txtCampo" value="#{tarifaMBean.dto.fechaCreacion}">
                            <f:convertDateTime pattern="#{applicationMBean.formatoFechaHoraSegundos}"  timeZone="#{applicationMBean.timeZone}"/>
                        </h:outputLabel>                            
                        <h:outputLabel styleClass="label" value="#{i18n['general.label.terminal.creacion']}"/>
                        <h:outputLabel styleClass="txtCampo" value="#{tarifaMBean.dto.terminalCreacion}"/>
                        <h:outputLabel styleClass="label" value="#{i18n['general.label.usuario.modificacion']}"/>
                        <h:outputLabel styleClass="txtCampo" value="#{tarifaMBean.dto.usuarioDto.descripcion}"/>
                        <h:outputLabel styleClass="label" value="#{i18n['general.label.fecha.modificacion']}"/>
                        <h:outputLabel styleClass="txtCampo" value="#{tarifaMBean.dto.fecha}">
                            <f:convertDateTime pattern="#{applicationMBean.formatoFechaHoraSegundos}"  timeZone="#{applicationMBean.timeZone}"/>
                        </h:outputLabel>                            
                        <h:outputLabel styleClass="label" value="#{i18n['general.label.terminal.modificacion']}"/>
                        <h:outputLabel styleClass="txtCampo" value="#{tarifaMBean.dto.terminal}"/>
                    </h:panelGrid>

                    <f:facet name="footer">
                        <p:commandButton title="#{i18n['general.button.guardar.tip']}" accesskey="#{applicationMBean.keyGuardar}" ajax="false"
                                         icon="ui-icon ui-icon-disk" rendered="#{sessionMBean.accion != applicationMBean.ver}"
                                         style="#{applicationMBean.estilosBtnGuardar}"
                                         onclick="return confirm('#{i18n.general_mensaje_confirmacion}');"
                                         value="#{i18n['general.button.guardar']}" 
                                         action="#{tarifaMBean.guardar}">                                    
                        </p:commandButton>                        

                        <p:commandButton title="#{i18n['general.button.atras.tip']}" accesskey="#{applicationMBean.keyRetroceder}" ajax="false"
                                         icon="ui-icon ui-icon-arrowreturnthick-1-w" immediate="true"
                                         style="#{applicationMBean.estilosBtnRetroceder}"
                                         value="#{i18n['general.button.atras']}" 
                                         action="#{tarifaMBean.retroceder}">                                    
                        </p:commandButton>

                        <p:commandButton title="#{i18n['bitacora.ver.historial']}"
                                         icon="ui-icon ui-icon-calculator"
                                         style="#{applicationMBean.estilosBtnHistorial}"
                                         value="#{i18n['bitacora.ver.historial']}"                                                                                                           
                                         ajax="true"
                                         rendered="#{tarifaMBean.dto.id!=null}"
                                         oncomplete="dlgBitacoraEntidad.show()"                                                       
                                         update=":frmPopupBitacoras:pgFormPopupBitacoras"
                                         actionListener="#{tarifaMBean.verBitacora}">                                    
                        </p:commandButton> 

                        <p:commandButton title="#{i18n['general.button.nuevo.tip']}" accesskey="#{applicationMBean.keyNuevo}"
                                         icon="ui-icon ui-icon-plus" rendered="#{tarifaMBean.dto.id!=null}"
                                         style="#{applicationMBean.estilosBtnNuevo}" 
                                         value="#{i18n['general.button.nuevo']}" 
                                         ajax="false"                                        
                                         actionListener="#{tarifaMBean.nuevo}">                                    
                        </p:commandButton>
                    </f:facet>
                </p:panel>
                <p:panel id="pnlTarifaProducto" header="#{i18n['panel.titulo.tarifa.producto']}" style="#{applicationMBean.estiloTitulo}" rendered="#{tarifaMBean.dto.id != null}">
                    <h:panelGrid  columns="10" cellpadding="4" id="pgTarifa">
                        <p:commandButton title="#{i18n['tarifa.producto.boton.nuevo']}"
                                         icon="ui-icon ui-icon-plus"
                                         style="#{applicationMBean.estilosBtnNuevoDetalle}"
                                         value="#{i18n['tarifa.producto.boton.nuevo']}"                                             
                                         update=":frmPopupTarifa:pgFormTarifa"
                                         oncomplete="carDialogTarifa.show()"
                                         rendered="#{sessionMBean.accion != applicationMBean.ver}"
                                         action="#{tarifaMBean.nuevaTarifaProducto}">
                        </p:commandButton>
                    </h:panelGrid>

                    <h:panelGrid columns="1">
                        <p:dataTable id="tblTarifa" value="#{tarifaMBean.dto.listaTarifaProducto}" var="dto" paginatorPosition="top"                                     
                                     paginator="true" rows="#{sessionMBean.cantidadRegistros}"  widgetVar="widTable">                              
                            <p:column style="text-align:center;">
                                <h:panelGrid columns="10" cellspacing="5" styleClass="estiloPanelGrid">
                                    <p:commandButton icon="ui-icon ui-icon-search" title="#{i18n['general.button.ver.tip']}"
                                                     action="#{tarifaMBean.verTarifaProducto}" ajax="true"
                                                     oncomplete="carDialogTarifa.show()"
                                                     update=":frmPopupTarifa:pgFormTarifa">
                                        <f:setPropertyActionListener value="#{dto}" target="#{tarifaMBean.tarifaProductoDto}" />
                                    </p:commandButton>
                                    <p:commandButton icon="ui-icon ui-icon-pencil" title="#{i18n['general.button.editar.tip']}"
                                                     rendered="#{sessionMBean.accion != applicationMBean.ver}"
                                                     update=":frmPopupTarifa:pgFormTarifa"
                                                     action="#{tarifaMBean.editarTarifaProducto}" 
                                                     oncomplete="carDialogTarifa.show()" ajax="true">
                                        <f:setPropertyActionListener value="#{dto}" target="#{tarifaMBean.tarifaProductoDto}" />                                                                    
                                    </p:commandButton>
                                </h:panelGrid>
                            </p:column>

                            <p:column headerText="#{i18n['tarifa.producto.producto']}" styleClass="general" style="text-align: left;">
                                <h:outputText value="#{dto.productoDetaDto.productoDto.descripcionCorta}" styleClass="general"/>
                            </p:column>
                            <p:column headerText="#{i18n['tarifa.producto.monto.venta']}" styleClass="general" style="text-align: right;">
                                <h:outputText value="#{dto.monedaVentaDto.simbolo} #{dto.montoVenta}" styleClass="general" >
                                    <f:convertNumber pattern="#{applicationMBean.formatoMontos}" />
                                </h:outputText>
                            </p:column>
                            <p:column headerText="#{i18n['tarifa.producto.monto.compra']}" styleClass="general" style="text-align: right;">
                                <h:outputText value="#{dto.monedaCompraDto.simbolo} #{dto.montoCompra}" styleClass="general" >
                                    <f:convertNumber pattern="#{applicationMBean.formatoMontos}" />
                                </h:outputText>
                            </p:column>
                            <p:column headerText="#{i18n['tarifa.producto.estado']}" styleClass="general" style="text-align: left;">
                                <h:outputText value="#{dto.estadoTexto}" styleClass="general" />
                            </p:column>
                        </p:dataTable>
                    </h:panelGrid>

                </p:panel>
            </h:form>           
            <p:dialog id="idDlgBitacoraEntidad" header="#{i18n['bitacora.titulo']}" widgetVar="dlgBitacoraEntidad" resizable="false"  
                      width="900" height="450" modal="true">                        
                <ui:include src="/pages/bitacora/bitacoras.xhtml" /> 
            </p:dialog>
            <p:dialog id="dialogTarifa" header="#{i18n['popup.tarifa.producto']}" widgetVar="carDialogTarifa" resizable="false"
                      width="800" height="200" modal="true">
                <p:messages id="msjDialogTarifa" showDetail="false" autoUpdate="true" />
                <ui:include src="/pages/conf/tarifa/tarifaProducto.xhtml" />
            </p:dialog>
        </ui:define>
    </ui:composition>
</html>